home *** CD-ROM | disk | FTP | other *** search
/ Computerworld 2000 May / Computerworld_2000-05_cd.bin / LOTUS / Files / i_quickplace / Lotus QuickPlace.exe / data1.cab / DominoData / browser.cnf < prev    next >
Text File  |  1999-07-19  |  8KB  |  191 lines

  1. ##############################################################################
  2. # File:         browser.cnf
  3. # Description:  Browser Capabilities configuration file
  4. # Date:         14-Dec-1998
  5. #
  6. # This file is used by @BrowserInfo to determine browser properties.
  7. # There are two types of directives in this file: Property and Rule.
  8. #
  9. # Property directive:
  10. #
  11. # The property directive defines a browser property which can be accessed by
  12. # @BrowserInfo.
  13. #
  14. #     Syntax: Property <PropertyName> <DataType> <Default>
  15. #
  16. # where:
  17. #
  18. #     <PropertyName> is any string
  19. #     <DataType> is the keyword "String", "Number", or "Boolean"
  20. #          String: can return any ASCII string
  21. #          Number: can return any valid decimal number
  22. #          Boolean: can return the values "True" and "False".
  23. #     <Default> specifies the value returned by this property if the User-Agent
  24. #          header does not match any of the rules defined for the property
  25. #
  26. # Example:
  27. #
  28. #   Property NewHTMLType String Unknown
  29. #
  30. # defines a property which can be evaluated by calling @BrowserInfo("NewHTMLType").
  31. #
  32. # Rule directive:
  33. #
  34. # This directive specifies a regular expression pattern which is used to match
  35. # the browser User-Agent header. The rules for a given property are tried in
  36. # order from top to bottom. The first rule that matches the User-Agent header
  37. # wins.
  38. #
  39. # Syntax: Rule <ReturnValue> <Expression>
  40. #
  41. # where:
  42. #
  43. #      <ReturnValue> is the value to be returned on a successful match
  44. #      <Expression> is the pattern-matching expression for the User-Agent header
  45. #
  46. # A pattern-matching expression can include literal characters and special characters.
  47. # Pattern-matching proceeds left-to-right across the User-Agent header value.
  48. # Pattern-matching is case-sensitive.
  49. #
  50. # Literal characters:
  51. #
  52. #   Any character that is not a special character matches itself.
  53. #
  54. # Special characters:
  55. #
  56. #   .   A period matches any single character.
  57. #   ^   A caret indicates the beginning of the header value. For example, "^Mozilla"
  58. #   matches "Mozilla" only if it is at the beginning of the header value.
  59. #   $   A dollar sign indicates the end of the header value. For example, "browser$"
  60. #   matches "browser" only if it is at the end of the header value.
  61. #   \   A backslash before a special character causes the character to be treated as a literal.
  62. #   For example, "\$" matches the dollar sign, not the end of the header value.
  63. #   []  Brackets enclose ranges of characters:
  64. #   A range normally matches any single character in the range. For example, "[abc]"
  65. #   matches "a", "b", or "c".
  66. #   A range that starts with "^" (caret) matches any single character NOT in the range.
  67. #   For example, "[^xyz]" matches any character EXCEPT "x", "y", or "z".
  68. #   A range can specify an ASCII range of characters by using "-" (hyphen). For example,
  69. #   "[0-9]" matches any ASCII digit.
  70. #   +   A character or range followed by a plus sign matches one or more sequences of that
  71. #   character or range. For example, "[0-9]+" matches one or more ASCII digits.
  72. #   *   A character or range followed by an asterisk matches zero or more sequences of that
  73. #   character or range. For example, ".*" matches zero or more characters.
  74. #   ?   A character or range followed by a question mark matches either the character or range,
  75. #   or the null string. For example, "ab?c" matches either "abc" or "ab".
  76. #    |  Two or more expressions separated by vertical bars matches any of the expressions.
  77. #   For example, "abc|[P-Z]" matches either "abc" or any single character from "P" to "Z".
  78. #    () Parenthesis "capture" part of an expression so you can use the matched substring in the
  79. #   rule's return value. You can capture more than one substring. For example, "(a)bc([0-9])"
  80. #   captures two substrings: "a" and a single digit.
  81. #   
  82. # Syntax of return value:
  83. # The return value of a rule consists of literal characters and the following special characters:
  84. #    &  Returns the entire header value.
  85. #    \N Where N is a number from 1 to 9, returns the Nth captured substring.
  86. #    \\ Returns a literal backslash.
  87. #
  88. #############################################################################
  89.  
  90.  
  91. ## BrowserType - string representing the main browser families
  92. ## Value for Notes client is "Notes"
  93. Property BrowserType String Unknown
  94.     Rule     Microsoft  MSIE            # Microsoft Internet Explorer
  95.     Rule     Compatible ^Mozilla/.*\([Cc]ompatible; # Any other Mozilla compatible
  96.     Rule     Netscape   ^Mozilla/           # Assume Netscape (never includes "compatible")
  97.  
  98.   
  99. ## Cookies - Boolean indicating whether browser supports cookies or not.
  100. ## Notes client: False
  101. Property Cookies Boolean False
  102.     Rule    True    MSIE [3-9]      # IE 3.x or higher
  103.     Rule    True    ^Mozilla/[2-9]  # All other Mozilla variants from 2.x upward
  104.     
  105. ## DHTML - Boolean indicating whether browser supports Dynamic HTML (HTML 4.0 + DOM) or not.
  106. ## Notes client: False
  107. Property DHTML Boolean False
  108.     Rule    True    MSIE [4-9]      # IE 4.x or higher
  109.     Rule    True    ^Mozilla/[4-9]  # All other Mozilla variants from 4.x upward
  110.  
  111. ## FileUpload - Boolean indicating whether browser supports file input type or not.
  112. ## Notes client: False
  113. Property FileUpload Boolean False
  114.     Rule     True   MSIE [4-9]      # IE 4.x or higher  
  115.     Rule     True   ^Mozilla/[3-9]  # All other Mozilla variants from 3.x upward
  116.  
  117. ## Frames - Boolean indicating whether browser supports framesets or not.
  118. ## Notes client: True
  119. Property Frames Boolean False
  120.     Rule     True   MSIE [3-9]      # IE 3.x or higher
  121.     Rule     True   ^Mozilla/[3-9]  # All other Mozilla variants from 3.x upward
  122.  
  123. ## Java - Boolean indicating whether browser supports Java applets or not.
  124. ## Notes client: True
  125. Property Java Boolean False
  126.     Rule     True   MSIE [3-9]      # IE 3.x or higher
  127.     Rule     True   ^Mozilla/[3-9]  # All other Mozilla variants from 3.x upward
  128.  
  129. ## JavaScript - Boolean indicating whether browser supports JavaScript or not.
  130. ## Notes client: True
  131. Property JavaScript Boolean False
  132.     Rule     True   MSIE [3-9]      # IE 3.x or higher
  133.     Rule     True   ^Mozilla/[3-9]  # All other Mozilla variants from 3.x upward
  134.  
  135. ## Iframe - Boolean indicating whether browser supports IFRAME tag or not.
  136. ## Notes client: False
  137. Property Iframe Boolean False
  138.     Rule     True   MSIE [4-9]      # Only IE supports IFRAME tag   
  139.  
  140. ## NotesBrowser - Boolean indicating that client is the Notes browser
  141. ## separate from BrowserType since Notes browser IS Mozilla compatible
  142. Property NotesBrowser Boolean False
  143.     Rule     True   Notes         # Don't check for version yet
  144.  
  145. ## Platform - String that indicates the OS platform of the browser.
  146. ## Notes client: Unknown
  147. Property Platform String Unknown
  148.     Rule     Win95  Win95
  149.     Rule     Win95  Windows 95
  150.     Rule     Win98  Win98
  151.     Rule     Win98  Windows 98
  152.     Rule     WinNT  WinNT
  153.     Rule     WinNT  Windows NT
  154.     Rule     WinNT  Windows\-NT
  155.     Rule     MacOS  Macintosh
  156.     Rule     MacOS  Mac_PowerPC
  157.     Rule     OS2    OS/2
  158.  
  159. ## Robot - Boolean to indicate that client is possibly a web search robot.
  160. ## Notes client: False
  161. Property Robot Boolean False    
  162.     Rule     True   [Cc]rawler      # Some generic crawler
  163.     Rule     True   [Ss]pider       # Some generic spider
  164.  
  165. ## SSL - Boolean indicating whether this browser supports SSL or not.
  166. ## Notes client: False
  167. Property SSL Boolean False
  168.     Rule     True   MSIE [3-9]      #  E 3.x or higher
  169.     Rule     True   ^Mozilla/[3-9]  # All other Mozilla variants from 3.x upward
  170.  
  171. ## Tables - Boolean indicating whether this browser supports HTML tables or not.
  172. ## Notes client: True
  173. Property Tables Boolean False
  174.     Rule     True   MSIE [3-9]      # IE 3.x or higher
  175.     Rule     True   ^Mozilla/[3-9]  # All other Mozilla variants from 3.x upward
  176.  
  177. ## VBScript - Boolean indicating whether browser supports VBScript or not.
  178. ## Notes client: False
  179. Property VBScript Boolean False
  180.     Rule     True   MSIE [3-9]      # IE 3.x or higher
  181.  
  182. ## Version - Number that indicates the browser version number
  183. ## Notes client: Returns the client build version
  184. Property Version Number -1
  185.     Rule     \1.\2  MSIE ([1-5])\.([0-9]+)      # Microsoft IE  
  186.     Rule     \1.\2  ^Mozilla/([0-9])\.([0-9]+)  # Netscape and all other Mozillas
  187.  
  188. # EOF
  189.